// 请你写一个函数 createCounter. 这个函数接收一个初始的整数值 init  并返回一个包含三个函数的对象。

// 这三个函数是：

// increment() 将当前值加 1 并返回。
// decrement() 将当前值减 1 并返回。
// reset() 将当前值设置为 init 并返回。
// 输入：init = 5, calls = ["increment","reset","decrement"]
// 输出：[6,5,4]
// 解释：
// const counter = createCounter(5);
// counter.increment(); // 6
// counter.reset(); // 5
// counter.decrement(); // 4

// 保证一直操作的是同一个数据就可以，就能保证数据的一致性
var createCounter = function (init) {
  let val = init
  return {
    increment: function () {
      return ++val
    },
    decrement: function () {
      return --val
    },
    reset: function () {
      val = init
      return val
    }
  }
}

const counter = createCounter(5)
console.log(counter.increment()) // 6
console.log(counter.reset()) // 5
console.log(counter.decrement()) //4
